【レポート】Video-based driver monitoring with AWS IoT and AI/ML #AWSreInvent #IOT317
セッション概要(公式サイトより日本語訳)
運転者の疲労や注意散漫を検知するエッジコンピュータービジョンおよび機械学習(CVML)ワークロード向けのIoTデバイスの構築方法を学びましょう。CVMLモデルをエッジにデプロイして運転者のイベントをリアルタイムで検知し、クラウド上の生成AIを使用して自然言語で大規模に動画コンテンツを検索する方法を体験できます。AWS IoT Greengrass、Amazon Kinesis Video Streams、AWS IoT Core、Amazon Bedrockを使用してソリューションを実装する手順をステップバイステップで学べます。
- 本Workshopのアーキテクト構成
AWS Greengrassについて
AWS Greengrass は、クラウドとエッジの間のギャップを埋めるために設計されたサービスで、ローカルデバイスでAWSクラウドサービスの一部機能を利用できます。主なメリットは以下になります。
- 低レイテンシー: データ処理をエッジデバイスで行うことで、クラウドに送信する必要がなく、応答時間を短縮できる。
- オフライン操作: インターネット接続が不安定な環境でも、重要な処理を継続できる。
- 分散アーキテクチャ:複数のエッジデバイスを簡単に管理およびスケーリングできる。
- AWS IoT Core、AWS IoT Device Defender、AWS IoT Device Management などのサービスとシームレスに連携ができる。
- Machine Learning: Amazon SageMaker や AWS の他の機械学習サービスと統合し、エッジでの機械学習モデルのデプロイメントを可能する。
- 自動デプロイメント: ソフトウェア更新や構成変更を自動でデプロイできる。
Workshopの進行
- ワークショップの様子です。4,5人で一つのテーブルを使う形でした。が、連携はなく、各個人が与えられた課題をこなしました。
- AWS IoT Coreの説明
- Greengrassの説明
- Amazon Kinesis Video. Streamsの説明
- MoveNetの説明
- Bedrockの利用している箇所の説明
- 私はiPadを持っていって、コンソールと照らし合わせてWorkshopを受講しました。
- AWS IoTのコンソール
- 動画を撮影、配信する側のコンソール
- 動画を視聴する側のコンソール。Playbackを押下すると、
- 撮影した動画が見られました。講師の方が撮影から視聴までのラグは最長で2秒程度と話していました
- 最後にコーチ陣と一緒に記念作成をしました
FaceDetectコンポーネントとMoveNetについて
FaceDetectコンポーネントは、Googleが開発した深層学習モデル「MoveNet」を活用して、顔のランドマーク(目、鼻、耳など)の位置を推定する仕組みです。このモデルが返してくる情報をもとに、カメラに対して人物の顔がどの方向を向いているのか、顔の左右(横)の回転と上下(縦)の回転を算出してくれます。
MoveNetは、ポーズをとった人物の画像を大量に使用してトレーニングされた事前学習済みのモデルで、体や顔の主要なポイント(ランドマーク)の位置を非常に高い精度で予測することが可能です。さらに、このモデルは効率的な推論ができるよう最適化されているため、スマートフォンや組み込みシステム、エッジコンピューティングデバイスのようなリソースが限られた環境でも動作可能です。
MoveNetはGoobleのモデルで、素朴な質問として、なぜこれを利用しているのか質問したところ、「現時点で画像の認識精度が高い」と言う回答がありました。
Workshopを通して
以下を体験ことができました。
- AWS IoT Greengrassを使用して、エッジアプリケーションを構築、デプロイする
- Amazon Kinesis Video Streamsを利用して、動画をクラウドに取り込む&ウェブアプリケーションで動画を視聴する
- AWS IoT Greengrassを使用して、エッジアプリケーションからAWS IoT Coreへイベントデータを送信する
- AWS IoT Coreからストレージ層にイベントデータをルーティングする
カルキュラム中に本Workshopに関連するブログの紹介があったのでリンクを添付します。
- How MTData built a CVML vehicle telematics and driver monitoring solution with AWS IoT
- Optimize image classification on AWS IoT Greengrass using ONNX Runtime
- Deploying and benchmarking YOLOv8 on GPU-based edge devices using AWS IoT Greengrass
- How to reduce latency with Amazon Kinesis Video Streams
- Building machine learning pipelines with Amazon Kinesis Video Streams
- Implement serverless semantic search of image and live video with Amazon Titan Multimodal Embeddings
今回のワークショップで、AWS IoT Greengrass、Amazon Kinesis Video Streamsを活用したエッジアプリケーションの構築、動画処理の具体的な手法を学ぶことができました。これらのサービスは、リアルタイム性が求められるシステムや効率的なデータ処理を実現する上で非常に有用だと思いました。
- AWS IoT Greengrassを使えば、エッジでのデータ処理や機械学習モデルのデプロイが簡単に行え、
- Amazon Kinesis Video Streamsはクラウドでの動画処理やストリーミングに最適です。
これらを組み合わせることで、より高度なソリューションを 短期間 で構築することが可能です。ぜひサービスを活用を検討してください^^